package com.dd.admin.business.memberCard.domain;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import com.dd.admin.common.model.UpdateGroup;


/**
 * <p>
 * 会员卡返回对象
 * </p>
 *
 * @author 727869402@qq.com
 * @since 2024-06-19
 */
@Data
@ApiModel(value="会员卡接收对象")
public class MemberCardDto {


    @ApiModelProperty(value = "会员卡id")
    @NotBlank(message = "会员卡id不能为空",groups = UpdateGroup.class)
    private String memberCardId;

    @ApiModelProperty(value = "会员id")
    private String memberId;

    @ApiModelProperty(value = "卡项ID")
    private String cardId;

    @ApiModelProperty(value = "卡号")
    private String cardNo;

    @ApiModelProperty(value = "卡名称")
    private String cardName;

    @ApiModelProperty(value = "余额")
    private BigDecimal amount;

    @ApiModelProperty(value = "赠送金额")
    private BigDecimal giveAmount;

    @ApiModelProperty(value = "商品折扣")
    private BigDecimal discount;

    @ApiModelProperty(value = "开卡金额")
    private BigDecimal buildCardAmount;

    @ApiModelProperty(value = "提成比例")
    private BigDecimal pushMoney;

    @ApiModelProperty(value = "0正常 1取消")
    private Integer cardStatus;

    @ApiModelProperty(value = "0正常 1删除")
    private Integer deleted;

    @ApiModelProperty(value = "乐观锁字段")
    private Long version;

    @ApiModelProperty(value = "门店id")
    private String shopId;

    @ApiModelProperty(value = "门店名")
    private String shopName;

    @ApiModelProperty(value = "创建人")
    private String createName;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "创建人id")
    private String createId;

    @ApiModelProperty(value = "修改时间")
    private Date updateTime;

    @ApiModelProperty(value = "修改人")
    private String updateName;

    @ApiModelProperty(value = "修改人id")
    private String updateId;

    @ApiModelProperty(value = "搜索会员卡关键字")
    private String querySearch;

    @ApiModelProperty(value = "搜索会员卡关键字")
    private Integer limit;
}
